/**
 * 这是抽取的一个模块，用于操作购物车的数据
 * 新增、修改、删除
 */
const KEY = "GOODS"

export const getLocalGoods = () => {
  return mpvue.getStorageSync(KEY) || {}
}

/**
 *  goods:{
 *    goods_id:129,
 *    goods_number:1
 *  }
 *
 */
export const addGoods = goods => {
  // 最终存储起来的时候 {129:3,38:1}
  // 1、取出本地之前存储的商品信息 {129:3,38:1}
  const localGoods = getLocalGoods()

  // 2、新增我们的商品信息---有些只需要更改商品的数量
  if (localGoods[goods.goods_id]) { // 你传递过来的对象中的goods_id之前存在
    localGoods[goods.goods_id] += goods.goods_number
  } else {
    localGoods[goods.goods_id] = goods.goods_number
  }

  // 3、保存回去
  mpvue.setStorageSync(KEY,localGoods)
}

/**
 * goods:{
 *    goods_id:129,
 *    goods_number:3
 * }
 */
export const updateGoods =  goods => {
  // 1、取出本地之前存储的商品信息 {129:3,38:1}
  const localGoods = getLocalGoods()

  // 2、更改
  localGoods[goods.goods_id] = goods.goods_number

  // 3、保存回去
  mpvue.setStorageSync(KEY,localGoods)
}

export const deleteGoods = goods_id => {
   // 1、取出本地之前存储的商品信息 {129:3,38:1}
   const localGoods = getLocalGoods()

   // 2、删除
   delete localGoods[goods_id]

   // 3、保存回去
  mpvue.setStorageSync(KEY,localGoods)
}

// 按需导出
// export {
//   addGoods,
//   getLocalGoods,
//   updateGoods,
//   deleteGoods:deleteGoods
// }
